package pl.edu.agh.broker.mns.shared;

import java.io.Serializable;
import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.Collection;

public interface MultiNameService extends Remote {

	public void replaceAllBy(String key, Serializable value,
			Respondable responder) throws RemoteException;

	public void remove(String key, Serializable value) throws RemoteException;

	public void removeAll(String key) throws RemoteException;

	public void add(String key, Serializable value, Respondable responder)
			throws RemoteException;

	public Collection<Serializable> get(String key) throws RemoteException;

	public Serializable getAny(String key) throws RemoteException;
}
